Upgrading React to latest 19.0.0^ version#3
Upgrading React to latest 19.0.0^ version#3regulartim merged 33 commits intoGreedyBear-Project:mainfrom
Conversation
|
Hi @regulartim, could you share the preferred PR style for this issue? |
|
and also, Before finalizing, I wanted to check what direction you’d prefer going forward for prop validation:
|
|
Hey @rootp1 ! Thanks for your work! :)
It's fine the way it is. 👍
Keep the current baseline. Is this ready to review then? |
Hi @regulartim. Thanks for the appreciation. This PR isn’t ready for review yet. For example, |
OK :) |
@regulartim,
Along with this, I'll have to adjust the related code :
Let me know if you’re okay with these changes, and I’ll move ahead accordingly. |
|
Just to add a bit more context, most of the changes would actually be driven by the shift to TanStack Table. The API differences compared to react-table are quite significant |
|
Hey @rootp1 ! Thanks for investigating!
Yes, I am ok with that. 👍 |
Hey @regulartim, Thanks for confirmation. |
|
@regulartim, the visual testing of the Tanstack/react-table passed sucessfully |
|
@regulartim as far as I checked, the implementation is qualified from my side, with lint errors |
|
Alright, thanks! :) |
Good Morning @regulartim, |
|
Thanks again @rootp1 ! This looks like it was a lot more work than I thought. |
Thanks @regulartim! It was a bit larger than expected, there might still be some edge case breakages, happy to help fix if anything shows up. |







React 19 Readiness and Tooling Modernization
Summary
This PR moves
@greedybear-project/gb-uicloser to React 19 compatibility and modernizes the local development and test setup.The main goals of this change are:
This is a broad maintenance PR touching application code, the example app, test tooling, and dependency management.
What Changed
1. React 19 compatibility cleanup
ReactDOM.renderusage withcreateRootConfirmModalto usereact-dom/clientdefaultPropsusage and converted defaults to parameter defaultspropTypesdeclarations across the component library and example appThis keeps the codebase aligned with modern React expectations and reduces noise from patterns that are no longer the preferred approach in recent React versions.
2. Example app migration from CRA to Vite
index.htmlindex.jstoindex.jsxApp.test.jstoApp.test.jsxreact-scriptscommands withviteandvitestThis makes the example app faster to run locally and brings it in line with the new unit test setup.
3. Test tooling migration
react-scripts testwithvitestvitest.config.mjsvitest.setup.mjs@testing-library/reactThis gives us a simpler and more modern test path for React 19 work.
4. Dependency updates
reactandreact-domto^19.0.0zustandreact-select@testing-library/react@testing-library/jest-domreactstrapreact-router-domaxios-hooks5. Library compatibility adjustments
createJSONStorageFile Groups Touched
Tooling and config
package.jsonpackage-lock.json.eslintrcvitest.config.mjsvitest.setup.mjsexample/package.jsonexample/vite.config.mjsexample/vitest.config.mjsexample/vitest.setup.mjsexample/index.htmlExample app migration
example/src/index.jsxexample/src/App.test.jsxComponent library cleanup
Most of these changes are mechanical cleanup rather than intentional behavior changes.
Behavior Notes
The intent of this PR is compatibility and maintenance, not a redesign of the component library.
Expected behavior changes are limited to:
defaultPropsWhy This PR Is Large
This migration spans several concerns at once:
These changes are related, and splitting them too aggressively would have made review harder because the compatibility work depends on the tooling and dependency updates.